package com.sss.hloster0305;

import java.io.File;
import java.util.Scanner;

import org.junit.jupiter.api.Test;
//输入一个路径名，将该路径下的所有的文件信息递归打印出来；（如果有子目录文件，继续打印子目录文件中的文件）
public class FileTestDricver02 {
  @Test
public void test01() {
	  Scanner sc=new Scanner(System.in);
		System.out.println("请输入一个文件名：");
		String strFileName=sc.nextLine();
		//创建一个文件对象
		 File file=new File(strFileName);
		 Path(file);
}
  public void Path(File file) {
	 
		//判定该文件是否存在，并且不是隐藏文件
		if(file.exists() && !file.isHidden()) {
			//判定是不是文档文件（判定是不是目录文件）
			if(file.isDirectory()) {
				//如果是目录
				File[] subFiles=file.listFiles();
				//递归调用，打印子文件以及子文件夹下的文件
				for(File file2:subFiles) {
					Path(file2);		
				}
			}else {
				//如果是文档文件
				System.out.println("文件的绝对路径为："+file.getAbsolutePath()+",   文件的名称为："+file.getName()+",  文件的长度为：："+file.length());
			}
		}else {
			System.out.println("该文件不存在或者隐藏文件。");
		}
  }
}
